CSharpTest.Net
BPlusTree.OptionsV2<TKey,TValue> Class Members
See Also  Properties  Methods  Send Feedback Download Help File
CSharpTest.Net.BPlusTree Assembly > CSharpTest.Net.Collections Namespace : BPlusTree.OptionsV2<TKey,TValue> Class


Glossary Item Box

The following tables list the members exposed by BPlusTree.OptionsV2<TKey,TValue>.

Public Constructors

 NameDescription
Public ConstructorBPlusTree.OptionsV2<TKey,TValue> ConstructorOverloaded.   
Top

Public Properties

 NameDescription
Public PropertyBTreeOrderA quick means of setting all the min/max values for the node counts using this value as a basis for the Maximum fields and one-quarter of this value for Minimum fields provided the result is in range. (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyCacheKeepAliveFactoryCacheKeepAliveFactory provides a delegate to inject an implementation of the IObjectKeepAlive interface while then igoring all the other CacheKeepAliveXXX properties. (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyCacheKeepAliveMaximumHistoryDetermins maximum number of recently visited nodes to keep alive in memory. This number defines the history size, not the number of distinct nodes. The ceiling is always respected reguardless of the timeout. Specify a value of 0 to disable history keep alive. (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyCacheKeepAliveMinimumHistoryDetermins minimum number of recently visited nodes to keep alive in memory. This number defines the history size, not the number of distinct nodes. This number will always be kept reguardless of the timeout. Specify a value of 0 to allow the timeout to empty the cache. (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyCacheKeepAliveTimeoutIf the cache contains more that CacheKeepAliveMinimumHistory items, this timeout will start to remove those items until the cache history is reduced to CacheKeepAliveMinimumHistory. It is important to know that the BPlusTree itself contains no theads and this timeout will not be respected if cache is not in use. (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyCachePolicyDetermines how long loaded nodes stay in memory, Full keeps all loaded nodes alive and is the most efficient, The default Recent keeps recently visited nodes alive based on the CacheKeepAlive properties, and None does not cache the nodes at all but does maintain a cache of locks for each node visited. (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyCallLevelLockOverridden. Defines a reader/writer lock that used to control exclusive tree access when needed. Version2 files using trasacation logs will use this to gain exclusive access to the tree during calls to Commit, Rollback, etc. The default is to use a SimpleReadWriteLocking class. If you are accessing the tree from a single thread, consider using the IgnoreLocking class for better performance.  
Public PropertyCreateFileGets or sets the file-create policy used when backing with a file storage (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyExistingLogActionDefines the action to perform when opening a BPlusTree with an existing log file.  
Public PropertyFileBlockSizeGets or sets the number of bytes per file-block used in the file storage (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyFileNameGets or sets the FileName that should be used to store the BTree (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyFileVersionOverridden. Returns the version this option set is compatible with.  
Public PropertyKeyComparerDefines a custom IComparer<T> to be used for comparing keys (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyKeySerializerAccesses the key serializer given to the constructor (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyLockingFactoryGets or sets the locking factory to use for accessing shared data. The default is WriterOnlyLocking() which does not perform read locks, rather it will rely on the cache of the btree and may preform dirty reads. You can use any implementation of ILockFactory; however, the SimpleReadWriteLocking seems to perform the most efficiently for both reader/writer locks. Additionally wrapping that instance in a ReserveredWriterLocking() instance will allow reads to continue up until a writer begins the commit process. If you are only accessing the BTree instance from a single thread this can be set to IgnoreLocking. Be careful of using ReaderWriterLocking as the write-intesive nature of the BTree will suffer extreme performance penalties with this lock. (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyLockTimeoutGets or sets the number of milliseconds to wait before failing a lock request, the default of two minutes should be more than adequate. (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyMaximumChildNodesThe largest number of child nodes that should be linked to before refactoring the tree to split this node into two. This property has a side-effect on MinimumChildNodes to ensure that it continues to be at most half of MaximumChildNodes. (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyMaximumValueNodesThe largest number of values that should be contained in this node before refactoring the tree to split this node into two. This property has a side-effect on MinimumValueNodes to ensure that it continues to be at most half of MaximumValueNodes. (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyMinimumChildNodesThe smallest number of child nodes that should be linked to before refactoring the tree to remove this node. In a 'normal' and/or purest B+Tree this is always half of max; however for performance reasons this B+Tree allow any value equal to or less than half of max but at least 2. (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyMinimumValueNodesThe smallest number of values that should be contained in this node before refactoring the tree to remove this node. In a 'normal' and/or purest B+Tree this is always half of max; however for performance reasons this B+Tree allow any value equal to or less than half of max but at least 2. (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyReadOnlySets the BTree into a read-only mode (only supported when opening an existing file) (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyStoragePerformanceReturns the DurabilityProtection of the underlying storage to create.  
Public PropertyStorageSystemSets the custom implementation of the storage back-end to use for the BTree (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyStorageTypeCan be used to explicitly specify the storage type, or by simply providing a file name this will be done for you. If no file name was specified the default is to use a memory store. (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Public PropertyTransactionLogGets or sets an implementation of ITransactionLog<TKey, TValue> used to log writes to this tree for recovery and/or monitoring.  
Public PropertyTransactionLogFileNameGets or sets a filename to write binary log files to.  
Public PropertyTransactionLogLimitDefines the number of bytes in the transaction log file before the BPlusTree will auto-commit and truncate the log. Values equal to or less than zero will not auto-commit (default).  
Public PropertyValueSerializerAccesses the key serializer given to the constructor (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Top

Public Methods

 NameDescription
Public MethodCalcBTreeOrderCalculates default node-thresholds based upon the average number of bytes in key and value  
Public MethodCloneCreates a shallow clone of the configuration options.  
Top

Protected Methods

 NameDescription
Protected MethodCalculateOrderOverridden. Calculates default node-thresholds based upon the average number of bytes in key and value  
Protected MethodSetLogFileSets the transaction log to use (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Protected MethodSetStorageCacheEnables or disables the caching and reordering of node write operations (Inherited from CSharpTest.Net.Collections.BPlusTreeOptions<TKey,TValue>)
Top

See Also

Generated with Document! X 2011 by Innovasys